home *** CD-ROM | disk | FTP | other *** search
/ ShareWare OnLine 2 / ShareWare OnLine Volume 2 (CMS Software)(1993).iso / ham / msys2fbb.zip / MSYS2FBB.TXT < prev   
Text File  |  1993-04-18  |  5KB  |  132 lines

  1. SB ALL @WW
  2. MSYS > FBB MAIL CONVERSION 1/3
  3. {
  4. This program is a desperate (AND PROBABLY FUTILE) attempt to save the WW 
  5. Packet Network the agony of all the duplicate messages that are now plaguing 
  6. it.  One of my reasons for switching (temporarily) to FBB from MSYS was to 
  7. determine where the dupes were coming from.  THEY ARE IN FACT HAPPENING, 
  8. there is no denying it.  Funny thing is, we seem to be able to tie it to the 
  9. FBB guys... but we can't catch them doing it.  And... they don't all do it!
  10. Here is a solution to the msystery (sp?) and a solution to the problem.  When
  11. converting the active mail section of a MSYS bbs over to FBB, if exactly the 
  12. right steps are not followed you will corrupt the integrity of your BID
  13. storage system.  If each message that is taken off MSYS does not leave with
  14. itact BID information, there have to be duplicates.  Given the awkwardness
  15. of mailfile exportation from MSYS, it is not surprising that there are as
  16. many "bad" BIDs out there as there are.
  17. Although I am not advocating "jumping ship" and moving from MSYS to FBB, I
  18. am offering this utility to allow sysops to make the conversion without
  19. corrupting the network.  Please distribute this file widely.
  20. ************************************************************
  21. From MSYS follow these steps:
  22. 1. Run houscleaning and kill all forwarded messages.
  23. 2. From the BBS, issue these commands:
  24.    A. X 0
  25.    B. >messages.imp
  26.    C. LL$ 1000
  27.       1. (when above step is finished, issue another > to close the file.
  28.    D. Exit MSYS.
  29.  
  30. 3. Run MSYS2FBB.EXE with a command line paramater giving full path/filename
  31.    information to the file created above.  
  32.    Example:
  33.    MSYS2FBB \MSYS\MESSAGES.IMP
  34.    This will create a file called \FBB\mail.in.  (\FBB MUST EXIST)
  35. 4. Commencer ton BBS.  Bon chance! de WB0OIZ
  36.  
  37. CONTINUED IN NEXT MESSAGE 2/3... PLEASE APPEND THESE 3 FILES TOGETHER TO 
  38. PRODUCE THE SOURCE CODE.
  39. }
  40. /EX
  41. SB ALL @WW
  42. MSYS > FBB MAIL CONVERSION 2/3
  43. {THIS IS A CONTINUATION OF A 3 PART FILE THAT WILL PROVIDE THE SOURCE CODE
  44. TO COMPILE A UTILITY THAT FACILITATES CONVERSION OF THE MAIL FILE FROM MSYS 
  45. TO FBB.}
  46. PROGRAM MSYS2FBB;
  47. {COMPILED IN BORLAND TURBO PASCAL 5.5}
  48. var
  49.    infile,outfile,readfile:text;
  50.    instr1,instr2,intext:string;
  51.    trstr:string[2];
  52.    fileidstr,tostr,fromstr,atstr1,atstr,msgnum:string[6];
  53.    bidstr:string[13];
  54.    subjectstr:string[40];
  55.    x,bpos:integer;
  56. {====================================================}
  57. procedure clearvars;
  58. begin
  59.   fileidstr:=''; trstr:='';tostr:='';fromstr:='';atstr1:='';subjectstr:='';
  60.   atstr:='';msgnum:='';bidstr:='';instr1:='';instr2:='';
  61.   end;
  62. {====================================================}
  63. BEGIN
  64.    Assign(infile,paramstr(1));
  65.    Assign(outfile,'\fbb\MAIL.IN');
  66.    reset(infile);
  67.    rewrite(outfile);
  68.    readln(infile,instr1);
  69.    While not eof(infile) do begin
  70.       clearvars;
  71.       Readln(infile,instr1);
  72.       Readln(infile,instr2);
  73.  
  74.       FILEIDstr:=copy(instr1,1,6);
  75.       TRstr:=copy(instr1,7,2);
  76.       TOstr:=copy(instr1,16,6);
  77.       FROMstr:=copy(instr1,23,6);
  78.       ATstr1:=copy(instr1,30,6);
  79.       subjectSTR:=copy(instr1,44,length(instr1)-43);
  80. {************************************PROC TO TURN BIDSTR1 INTO PROPPER BID}
  81.       bpos := pos('BID=',instr2)+3;
  82.       x := 1;
  83.       while instr2[bpos + x] <> ' ' do begin
  84.          BIDstr[x] := instr2[bpos+x];
  85.          BIDstr[0] := chr(ord(x));
  86.          inc(x);
  87.          end;
  88. {*********************************PROC TO TURN ATSTR1 INTO PROPER @AT STRING.}
  89.           if pos('-',ATstr1) > 0 then ATstr := ''
  90.           else
  91.           if pos('=',ATstr1) > 0 then ATstr := ''
  92.           else
  93.           if pos('     ',ATstr1) > 0 then ATstr := ''
  94.           else ATstr := ATstr1;
  95. {******************************************************CREATE MESSAGE HEADER}
  96. {CONTINUED IN NEXT MESSAGE 3/3... PLEASE APPEND THESE 3 FILES TOGETHER TO 
  97. PRODUCE THE SOURCE CODE.
  98. }
  99. /EX
  100. SB ALL @WW
  101. MSYS > FBB MAIL CONVERSION 3/3
  102. {THIS IS A CONTINUATION OF A 3 PART FILE THAT WILL PROVIDE THE SOURCE CODE
  103. TO COMPILE A UTILITY THAT FACILITATES CONVERSION OF THE MAIL FILE FROM MSYS 
  104. TO FBB.}
  105.  
  106.       if ATstr = '' then
  107.           writeln(outfile,'S',TRstr[1],' ',Tostr,' <',FROMstr,' $',BIDstr)
  108.           else
  109.               Writeln(outfile,'S',TRstr[1],' ',TOstr,' @',ATstr,' <',
  110.                       FROMstr,' $',BIDstr);
  111.       Writeln(outfile,subjectSTR);
  112. {************************************************** GET FILEID AND READ FILE}
  113.       x := 1;
  114.       while FILEIDstr[x] = ' ' do inc(x);
  115.       MSGNUM := copy(FILEIDstr,x,length(fileidstr)-x);
  116.       assign(readfile,'\msys\mail\msg' + msgnum + '.dat');
  117.       writeln('Creating import for msys\mail\msg',msgnum,'.dat');
  118.       reset(readfile);
  119.       readln(readfile,intext);
  120.       writeln(outfile,intext);
  121.       while not eof(readfile) do begin
  122.          readln(readfile,intext);
  123.          writeln(outfile,intext);
  124.          end;
  125.       close(readfile);
  126.       writeln(outfile,'/EX');
  127.    end; {while not eof <<<main list>>>}
  128. END.
  129. {IF YOU WOULD RATHER GET A COMPILED VERSION OF THIS PROGRAM, PLEASE CHECK
  130. THE CLEVELAND HAMNET BBS, W6RDH BBS OR CALL ME TO SET UP A SKED FOR TRANSFER
  131. OR SEND ME A DISK WITH A SASE.}
  132. /EX